*************************************************************************************************************************************************;
*************************************************************************************************************************************************;
**** Paper: Can Central Banks Boost Corporate Investment? Evidence from ECB Liquidity Injections
**** Journal: Review of Corporate Finance Studies
**** Authors: Stine Louise von R�den, Marti G. Subrahmanyam, Dragon Yongjun Tang, Sarah Qian Wang
**** Version: November 29,2022


1. There are 8 general datasets:
	(1) FirmSample_Base
		>> baseline corporate-quarter level datasample
	(2) FirmSample_Change
		>> corporate level datasample given in changes
	(3) FirmSample_MatchedBySize
		>> LTRO vs. Non-LTRO corporate sample matched by Country, Industry and Size
	(4) FirmSample_MatchedByZscore
		>> LTRO vs. Non-LTRO corporate sample matched by Country, Industry and Z-score
	(5) FirmSample_MatchedBySizeEU
		>> Euro vs. Non-Euro corporate sample matched by Country, Industry and Size
	(6) FirmSample_MatchedByZscoreEU
		>> Euro vs. Non-Euro corporate sample matched by Country, Industry and Z-score
	(7) BankSample_Base
		>> baseline bank level datasample
	(8) BankSample_Panel
		>> bank-year level panel datasample 

2. The path to the data samples needs to be specified before running the code

3. The regression can be run model by model, but also as complete tables in line with what is shown in the paper


**************************************************************************************************************************************;
* Read data files;
%let FilePath = [SPECIFY PATH TO DATA SAMPLES HERE];	libname LibSave "&FilePath";

*Uploading data samples;
*************************************************************************************************************************************************;
data FirmSample_Base; set LibSave.Pseudo_FirmSample_Base; run;
data FirmSample_Changes; set LibSave.Pseudo_FirmSample_Changes; run;

data FirmSample_MatchedBySize; set LibSave.Pseudo_FirmSample_MatchedBySz; run;
data FirmSample_MatchedByZscore; set LibSave.Pseudo_FirmSample_MatchedByZs; run;
data FirmSample_MatchedBySizeEU; set LibSave.Pseudo_FirmSample_MatchedBySzEU; run;
data FirmSample_MatchedByZscoreEU; set LibSave.Pseudo_FirmSample_MatchedByZsEU; run;

data BankSample_Base; set LibSave.Pseudo_BankSample_Base; run;
data BankSample_Panel; set LibSave.Pseudo_BankSample_Panel; run;

* Fixed effects;
*************************************************************************************************************************************************;
%let firmid = gvkey ;
%let timeid = YrQtr;
%let countryid = loc;
%let industryid = sector;
%let timesectorcountryid = timesectorcountryid;
%let bankid = BVDIDNUM;


***********************************************************************************;
* TABLE 3: LTRO effect on investment and salaries and wages
***********************************************************************************;
* Panel A: Baseline Sample;
***********************************************************************************;
%let Z=3_PanelA_Base;
***********************************************************************;
%macro Regression();
PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timeid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated logspread5y Export &timeid /SOLUTION NOINT;
	ods output parameterestimates=parm_m4; ods output FitStatistics=Rsquares_m4; ods output nobs=no_obs_m4;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid ; CLASS &timeid ;
		model Salary_ln = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated logspread5y Export &timeid /SOLUTION NOINT;
	ods output parameterestimates=parm_m5; ods output FitStatistics=Rsquares_m5; ods output nobs=no_obs_m5;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m6; ods output FitStatistics=Rsquares_m6; ods output nobs=no_obs_m6;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid ; CLASS &timesectorcountryid ;
		model CapextoA_upd = zero1 CFToAssets MrktToBook Size Leverage Rated BankLTROUptake_ToLoan &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m7; ods output FitStatistics=Rsquares_m7; ods output nobs=no_obs_m7;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = zero1 CFToAssets MrktToBook Size Leverage Rated BankLTROUptake_FacAmt &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m8; ods output FitStatistics=Rsquares_m8; ods output nobs=no_obs_m8;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base;  where GIIPS=1;
	ABSORB &firmid ; CLASS &timesectorcountryid ;
		model CapextoA_upd = zero1 CFToAssets MrktToBook Size Leverage Rated BankLTROUptake_FacAmt &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m9; ods output FitStatistics=Rsquares_m9; ods output nobs=no_obs_m9;
	RUN; QUIT;

* download files;
%do ii=4 %to 9;
%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z   (drop= i j id) ;
merge result_m4 result_m5 result_m6 result_m7 result_m8 result_m9;
by i id ;
if value_m4 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;
%mend Regression;
%Regression;
* Panel B;
***********************************************************************************;
%let Z=3_PanelB_Matched;
***********************************************************************;
%macro Regression();

	PROC GLM DATA=FirmSample_MatchedBySize; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =  LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1; ods output FitStatistics=Rsquares_m1; ods output nobs=no_obs_m1;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_MatchedByZscore; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =  LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated  &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_MatchedBySizeEU; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =  LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_MatchedByZscoreEU; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =  LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m4; ods output FitStatistics=Rsquares_m4; ods output nobs=no_obs_m4;
	RUN; QUIT;

* download files;
	%do ii=1 %to 4;
	%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z (drop= i j id) ;
merge result_m1 result_m2 result_m3 result_m4;
by i id ;
if value_m1 = " " then delete;
	* The variables are used in the statement: ;
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'CPXtoAssets' then parameter= 'Capital Expenditure';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'D_Dividends' then parameter= 'Div. Dummy';
		if parameter = 'RDToSales_reg' then parameter= 'R\&D/Sales';
		if parameter = 'AQCToAssets_reg' then parameter= 'Acquisition Activity'; 
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Num_Rating' then parameter= 'Rating'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'TotalCL' then parameter= 'Total CL'; 
		if parameter = 'DrawnCL' then parameter= 'Drawn CL'; 
		if parameter = 'UndrawnCL' then parameter= 'Undrawn CL'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'LTRO12' then parameter= 'LTRO Intervention'; 
		if parameter = 'LTRO12*EURO' then parameter= 'LTRO Intervention * EURO'; 
		if parameter = 'LTROuptake_CGD' then parameter= 'Country LTRO Uptake'; 
		if parameter = 'LTROtime' then parameter = '\textbf{LTRO}';
		if parameter = 'EURO' then parameter = 'EURO';
		if parameter = 'GIIPS' then parameter = '\textbf{GIIPS}';
		if parameter = 'R-square' then parameter = '\textit{R}-square';
		if parameter = 'N' then parameter = '\textit{N}';
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Lenders LTRO Uptake';  
		if parameter = 'zero' then parameter= 'Country LTRO Uptake';  
run;

%mend Regression;
%Regression;

*************************************************************************************************************************************************;
* TABLE 4 ;
*************************************************************************************************************************************************;
* Panel A: Probit model on dummy variable;
*************************************************************************************************************************************************;
%let DepVar=ProbitLTRODummy;
%let Z= 4_Panel_A_LTRODet;
* L0 models;
**********************************************;
ods output parameterestimates=Est0 ModelInfo=ModelI0 nobs=n0;
proc probit data=BankSample_Base;	class &DepVar; 	model &DepVar= / d=logistic itprint;run;
data logL0 (keep=LogL0); set ModelI0; if Label1 ne "Log Likelihood" then delete; LogL0=nvalue1*(-1); run;
ods output parameterestimates=Est0 ModelInfo=ModelI0 nobs=n0;
proc probit data=BankSample_Base; where F_Size ne . and F_Leverage ne . and F_ShortDebt ne . and  F_CFToAssets ne .; class &DepVar; 	model &DepVar= / d=logistic itprint; run;
data logL0f (keep=LogL0); set ModelI0; if Label1 ne "Log Likelihood" then delete; LogL0=nvalue1*(-1); run; 
ods output parameterestimates=Est0 ModelInfo=ModelI0 nobs=n0;
proc probit data=BankSample_Base; where F_Size ne . and F_Leverage ne . and F_ShortDebt ne . and  F_CFToAssets ne . and HighCDSBank_NONGIIPS ne .; class &DepVar;	model &DepVar= / d=logistic itprint; run;
data logL0ff (keep=LogL0); set ModelI0; if Label1 ne "Log Likelihood" then delete; LogL0=nvalue1*(-1); run;
* Bank LTRO dummy models;
**********************************************;
%let R=1; ods output parameterestimates=EstM ModelInfo=ModelIM nobs=nM;
proc probit data=BankSample_Base; class &DepVar;	model &DepVar= HighCDSBank B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk / d=logistic itprint;	run;
data logLM (keep=LogLM); set ModelIM; if Label1 ne "Log Likelihood" then delete; LogLM=nvalue1*(-1); run;
data NM1 (keep=N_obs); set nM; N_obs= N; if Label ne "Number of Observations Used" then delete; run ;
data Pseudor (keep=n_obs Pseudor); merge nm1 loglm logl0f; PseudoR=(logl0-loglm)/logl0; run;
data modelout; set pseudor estm; i=_N_;  if i=1 then i=100;run;
data modelout1; set modelout modelout;
proc sort data=modelout1;	by i; 	run;
data modelout_c&R. (keep= j parameter coeff_&R.); retain j parameter value; set modelout1;
parameter_lag=lag(parameter); if parameter=parameter_lag then row=2; else row=1;	s_int=substrn(parameter,1,6);if s_int="Inter" then delete;
if i<100 and row =2 then value="\tiny{("||substrn(StdErr,1,5)||")}";
if i<100 and row =1 and ProbChiSq >= 0.10 then value=substrn(estimate,1,6);	if i<100 and row =1 and ProbChiSq < 0.10 then value=substrn(estimate,1,6)||"*";
if i<100 and row =1 and ProbChiSq < 0.05 then value=substrn(estimate,1,6)||"**";	if i<100 and row =1 and ProbChiSq < 0.01 then value=substrn(estimate,1,6)||"***";
j=_N_;	if row =2 then parameter =" "; 	if row=1 and i=100 then do; parameter="Pseudo R2"; value=substrn(Pseudor,1,6); j=1;end;	if row=2 and i=100 then do; parameter="N"; value=N_Obs; j=2; end;
coeff_&R.=value;
proc sort data=modelout_c&R.; by j;	run; data modelout_c&R.; set modelout_c&R.; k=_N_; proc sort data=modelout_c&R.; by k;run;
%let R=2; ods output parameterestimates=EstM ModelInfo=ModelIM nobs=nM;
proc probit data=BankSample_Base;      class &DepVar;	model &DepVar=HighCDSBank B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk EBA_2011 / d=logistic itprint;	run;
data logLM (keep=LogLM); set ModelIM; if Label1 ne "Log Likelihood" then delete; LogLM=nvalue1*(-1); run;
data NM1 (keep=N_obs); set nM; N_obs= N; if Label ne "Number of Observations Used" then delete; run ;
data Pseudor (keep=n_obs Pseudor); merge nm1 loglm logl0f; PseudoR=(logl0-loglm)/logl0; run;
data modelout; set pseudor estm; i=_N_;  if i=1 then i=100;run;
data modelout1; set modelout modelout; 
proc sort data=modelout1;	by i; 	run;
data modelout_c&R. (keep= j parameter coeff_&R.); retain j parameter value; set modelout1;
parameter_lag=lag(parameter); if parameter=parameter_lag then row=2; else row=1;	s_int=substrn(parameter,1,6);if s_int="Inter" then delete;
if i<100 and row =2 then value="\tiny{("||substrn(StdErr,1,5)||")}";
if i<100 and row =1 and ProbChiSq >= 0.10 then value=substrn(estimate,1,6);	if i<100 and row =1 and ProbChiSq < 0.10 then value=substrn(estimate,1,6)||"*";
if i<100 and row =1 and ProbChiSq < 0.05 then value=substrn(estimate,1,6)||"**";	if i<100 and row =1 and ProbChiSq < 0.01 then value=substrn(estimate,1,6)||"***";
j=_N_;	if row =2 then parameter =" "; 	if row=1 and i=100 then do; parameter="Pseudo R2"; value=substrn(Pseudor,1,6); j=1;end;	if row=2 and i=100 then do; parameter="N"; value=N_Obs; j=2; end;
coeff_&R.=value;
proc sort data=modelout_c&R.; by j;	run; data modelout_c&R.; set modelout_c&R.; k=_N_; proc sort data=modelout_c&R.; by k;run;
%let R=3; ods output parameterestimates=EstM ModelInfo=ModelIM nobs=nM;
proc probit data=BankSample_Base;  class &DepVar;	model &DepVar=HighCDSBank_G B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk zero1 NONGIIPS HighCDSBank_NONGIIPS/ d=logistic itprint;    run;
data logLM (keep=LogLM); set ModelIM; if Label1 ne "Log Likelihood" then delete; LogLM=nvalue1*(-1); run;
data NM1 (keep=N_obs); set nM; N_obs= N; if Label ne "Number of Observations Used" then delete; run ;
data Pseudor (keep=n_obs Pseudor); merge nm1 loglm logl0ff; PseudoR=(logl0-loglm)/logl0; run;
data modelout; set pseudor estm; i=_N_;  if i=1 then i=100;run;
data modelout1; set modelout modelout;
proc sort data=modelout1;	by i; 	run;
data modelout_c&R. (keep= j parameter coeff_&R.); retain j parameter value; set modelout1;
parameter_lag=lag(parameter); if parameter=parameter_lag then row=2; else row=1;	s_int=substrn(parameter,1,6);if s_int="Inter" then delete;
if i<100 and row =2 then value="\tiny{("||substrn(StdErr,1,5)||")}";
if i<100 and row =1 and ProbChiSq >= 0.10 then value=substrn(estimate,1,6);	if i<100 and row =1 and ProbChiSq < 0.10 then value=substrn(estimate,1,6)||"*";
if i<100 and row =1 and ProbChiSq < 0.05 then value=substrn(estimate,1,6)||"**";	if i<100 and row =1 and ProbChiSq < 0.01 then value=substrn(estimate,1,6)||"***";
j=_N_;	if row =2 then parameter =" "; 	if row=1 and i=100 then do; parameter="Pseudo R2"; value=substrn(Pseudor,1,6); j=1;end;	if row=2 and i=100 then do; parameter="N"; value=N_Obs; j=2; end;
coeff_&R.=value;
proc sort data=modelout_c&R.; by j;	run; data modelout_c&R.; set modelout_c&R.; k=_N_; proc sort data=modelout_c&R.; by k;run;
data Table_&Z;	merge modelout_c1 modelout_c2 modelout_c3;	by k;	run;
* Panel B;
*************************************************************************************************************************************************;
%let Z=4_Panel_B_LTRODet; 

%macro Regression();
PROC GLM DATA=BankSample_Base; 
	model BankUptake_LTROTotal_LN = HighCDSBank B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk /SOLUTION NOINT;
ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
RUN; QUIT;
PROC GLM DATA=BankSample_Base; 
	model BankUptake_LTROTotal_LN =  HighCDSBank B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk EBA_2011 /SOLUTION NOINT;
ods output parameterestimates=parm_m4; ods output FitStatistics=Rsquares_m4; ods output nobs=no_obs_m4;
RUN; QUIT;
PROC GLM DATA=BankSample_Base; 
	model BankUptake_LTROTotal_LN = HighCDSBank B_BankSize SovereignDebtToAssets F_Size F_Leverage F_ShortDebt F_CFToAssets C_Risk NONGIIPS HighCDSBank_NONGIIPS /SOLUTION NOINT;
ods output parameterestimates=parm_m5; ods output FitStatistics=Rsquares_m5; ods output nobs=no_obs_m5;
RUN; QUIT;

* download files;
	%do ii=3 %to 5;
	%local m; %let m = &ii ; 
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z  ; retain i j id;
merge result_m3 result_m4 result_m5 ;
by i id ;
if value_m5 = " " then delete;
	* The variables are used in the statement: ;
		if parameter = 'B_BankSize' then parameter= 'Bank Size';
		if parameter = 'F_CFToAssets' then parameter= 'Firm Cash Flow';
		if parameter = 'F_ShortDebt' then parameter= 'Firm Short-Term Debt';
		if parameter = 'C_risk' then parameter= 'Country Log(CDS)';
		if parameter = 'F_Leverage' then parameter= 'Firm Leverage';
		if parameter = 'F_Size' then parameter= 'Firm Size';
		if parameter = 'B_InvRating' then parameter= 'Bank IG Rating';
		if parameter = 'B_Risk' then parameter= 'Bank CDS';
		if parameter = 'B_RiskLN' then parameter= 'Bank log(CDS)';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'CFToAssets' then parameter= 'Cash Flow/Assets';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Size';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'CPXtoAssets' then parameter= 'Capital Expenditure';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'D_Dividends' then parameter= 'Div. Dummy';
		if parameter = 'RDToSales_reg' then parameter= 'R\&D/Sales';
		if parameter = 'AQCToAssets_reg' then parameter= 'Acquisition Activity'; 
		if parameter = 'spread5y' then parameter= 'Sov. CDS'; 
		if parameter = 'Num_Rating' then parameter= 'Rating'; 
		if parameter = 'Export' then parameter= 'Sov. Export'; 
		if parameter = 'TotalCL' then parameter= 'Total CL'; 
		if parameter = 'DrawnCL' then parameter= 'Drawn CL'; 
		if parameter = 'UndrawnCL' then parameter= 'Undrawn CL'; 
		if parameter = 'LTRO12' then parameter= 'LTRO Intervention'; 
		if parameter = 'LTRO12*EURO' then parameter= 'LTRO Intervention * EURO'; 
		if parameter = 'LTROuptake_CGD' then parameter= 'LTRO Uptake'; 
		if parameter = 'LTROtime' then parameter = '\textbf{LTRO}';
		if parameter = 'EURO' then parameter = '\textbf{EURO}';
		if parameter = 'GIIPS' then parameter = '\textbf{GIIPS}';
%end;
%mend Regression;
%Regression;

************************************************************************************************;
* TABLE 5: Bank Risk
************************************************************************************************;
%let Z = 5_BankRisk;

***********************************************************************;
%macro Regression();

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl LTRO_HighRiskBank zero1 zero2 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1; ods output FitStatistics=Rsquares_m1; ods output nobs=no_obs_m1;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 LTRO_GIIPS zero3 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 zero2 LTRO_HighRiskBank_GIIPS CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
	RUN; QUIT;

* download files;
	%do ii=1 %to 3;
	%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m._loc_&l;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z   (drop= i j id) ;
merge result_m1 result_m2 result_m3 ;
by i id ;
if value_m3 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;

%mend Regression;
%Regression;

************************************************************************************************;
* TABLE 6: Sovereign Debt
************************************************************************************************;
* Panel B: Bank LTRO Uptake and banks' sovereign debt holdings
************************************************************************************************;
%let Z=6_Panel_B_Sovdebt;

%macro Regression();

PROC GLM DATA=BankSample_Base; 
	model TotalChange = BankUptake_LTROTotal_LN HighCDSBank  B_BankSize  /SOLUTION NOINT;
ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
RUN; QUIT;
PROC GLM DATA=BankSample_Base; 
	model RelativeChange_G =  BankUptake_LTROTotal_LN HighCDSBank  B_BankSize  /SOLUTION NOINT;
ods output parameterestimates=parm_m4; ods output FitStatistics=Rsquares_m4; ods output nobs=no_obs_m4;
RUN; QUIT;
PROC GLM DATA=BankSample_Base; 
	model RelativeChange_N = BankUptake_LTROTotal_LN HighCDSBank B_BankSize 	/SOLUTION NOINT;
ods output parameterestimates=parm_m5; ods output FitStatistics=Rsquares_m5; ods output nobs=no_obs_m5;
RUN; QUIT;
PROC GLM DATA=BankSample_Panel; 
	model GovernmentDebt_yr_ln =  LTROUptake HighCDSBank B_BankSize_yr /SOLUTION NOINT;
ods output parameterestimates=parm_m6; ods output FitStatistics=Rsquares_m6; ods output nobs=no_obs_m6;
RUN; QUIT;

* download files;
	%do ii=3 %to 6; %local m; %let m = &ii ;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';	else if Probt <= 0.05 then stars = '**';	else if Probt <= 0.10 then stars = '*';	else stars = '';
	format stderr 8.3; format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 	id=_N_;
	run;
	data parm3; set parm1 parm2; 	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;	
	if j=2 then parameter = ' ';	if i=2 then do; parameter = 'R-square'; id=1;end;	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

	data Table_&Z ; retain i j id;
	merge result_m3 result_m4  result_m5 result_m6 ;	by i id ;
	if value_m6 = " " then delete; if parameter = 'B_BankSize' then parameter= 'Bank Size';
	run;
%mend Regression;
%Regression;
* Panel C: LTRO uptake effect on investment and bank lenders' risky sovereign debt holdings   ;
************************************************************************************************;
%let Z= 6_Panel_C_SovDebt;

%macro Regression();

PROC GLM DATA=FirmSample_Base; where LTRO_RiskySovBank ne .;
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 zero2 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m6; ods output FitStatistics=Rsquares_m6l; ods output nobs=no_obs_m6;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =LTROUptakeBank5y_scl LTRO_RiskySovBank zero2 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m7; ods output FitStatistics=Rsquares_m7; ods output nobs=no_obs_m7;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd =LTROUptakeBank5y_scl zero1 LTRO_RiskySovBank_GI CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m8; ods output FitStatistics=Rsquares_m8; ods output nobs=no_obs_m8;
	RUN; QUIT;

* download files;
	%do ii=6 %to 8;
	%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z (drop= i j id) ;
merge  result_m6 result_m7 result_m8 ;
by i id ;
if value_m6 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 

run;
%mend Regression;
%Regression;

************************************************************************************************;
* TABLE 7: Early Repayment
************************************************************************************************;
%let Z = 7_Repayment ;
***********************************************************************;
%macro Regression();

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl LTRO_LowRepay zero2 zero3 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1; ods output FitStatistics=Rsquares_m1; ods output nobs=no_obs_m1;
	RUN; QUIT;
PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 LTRO_MedRepay zero3 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2;
	RUN; QUIT;
PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 zero2 LTRO_HigRepay CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
	RUN; QUIT;

* download files;
	%do ii=1 %to 3;
	%local m; %let m = &ii ; 
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z (drop= i j id) ;
merge result_m1 result_m2 result_m3 ;
by i id ;
if value_m3 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;

%mend Regression;
%Regression;

************************************************************************************************;
* TABLE 8: Corporate Rollover Risk
************************************************************************************************;
%let Z=8_RolloverRisk;

%macro Regression();

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl LTRO_SmallFirm zero1 zero2 zero3 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1 ; ods output FitStatistics=Rsquares_m1 ; ods output nobs=no_obs_m1 ;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 LTRO_HighRoR_Csh zero2 zero3 CFToAssets MrktToBook Size Leverage Rated	&timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2 ; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2 ;
	RUN; QUIT;

	PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 zero2 LTRO_LowRoR_TA zero3 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m3 ; ods output FitStatistics=Rsquares_m3 ; ods output nobs=no_obs_m3 ;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 zero2 zero3 LTRO_HighRoR_CFrisk CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m4 ; ods output FitStatistics=Rsquares_m4 ; ods output nobs=no_obs_m4 ;
	RUN; QUIT;

* download files;
	%do ii=1 %to 4;
	%local m; %let m = &ii ; 
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z  (drop= i j id) ;
merge result_m1 result_m2 result_m3 result_m4 ;
by i id ;
if value_m4= " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;

%mend Regression;
%Regression;

************************************************************************************************;
* TABLE 9: Policy Interactions
************************************************************************************************;
%let Z=9_PolicyInteraction;
%macro Regression();

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl LTRO_GovInvDec zero2 CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1; ods output FitStatistics=Rsquares_m1; ods output nobs=no_obs_m1;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid;
		model CapextoA_upd = LTROUptakeBank5y_scl zero1 LTRO_CorpTaxInc CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2;
	RUN; QUIT;

* download files;
	%do ii=1 %to 2;
	%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z   (drop= i j id) ;
merge result_m1 result_m2 ;
by i id ;
if value_m2 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;

%mend Regression;
%Regression;

***********************************************************************************;
* TABLE IA1. LTRO effect on investment and salaries and wages: Robustness checks
***********************************************************************************;
%let Z=IA1_Robustness; 
***********************************************************************;
%macro Regression();

PROC GLM DATA=FirmSample_Base; 
	ABSORB &firmid; CLASS &timesectorcountryid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated D_Dividends_lag RDToSales_reg_lag AQCToAssets_reg_lag Industry_Sigma NWCtoAssets Sales_ln HHI &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m1; ods output FitStatistics=Rsquares_m1; ods output nobs=no_obs_m1;
	RUN; QUIT;

PROC GLM DATA=FirmSample_Changes; 
	ABSORB &firmid; CLASS &timesectorcountryid ;
		model CapextoA_upd_chg = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m2; ods output FitStatistics=Rsquares_m2; ods output nobs=no_obs_m2;
	RUN; QUIT;

%let datas=FirmSample_Base;	*DataSample_Interaction (4_a);
PROC GLM DATA=&datas; where YrQtr in ("2011-1","2011-2","2011-3","2011-4","2012-1","2012-2");
	ABSORB &firmid; CLASS &timesectorcountryid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated  &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m3; ods output FitStatistics=Rsquares_m3; ods output nobs=no_obs_m3;
	RUN; QUIT;

PROC GLM DATA=FirmSample_MatchedBySize; where YrQtr in ("2011-1","2011-2","2011-3","2011-4","2012-1","2012-2");
	ABSORB &firmid ; CLASS &timesectorcountryid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m4; ods output FitStatistics=Rsquares_m4; ods output nobs=no_obs_m4;
	RUN; QUIT;

PROC GLM DATA=FirmSample_MatchedByZscore; where YrQtr in ("2011-1","2011-2","2011-3","2011-4","2012-1","2012-2");
	ABSORB &firmid; CLASS &timesectorcountryid ;
		model CapextoA_upd = LTROUptakeBank5y_scl CFToAssets MrktToBook Size Leverage Rated    &timesectorcountryid /SOLUTION NOINT;
	ods output parameterestimates=parm_m5; ods output FitStatistics=Rsquares_m5; ods output nobs=no_obs_m5;
	RUN; QUIT;

* download files;
	%do ii=1 %to 5;
	%local m; %let m = &ii ; %put The value of the local variable is &m;
	data parm0; set parm_m&m; 	
	if parameter = 'Intercept' then delete;	
	if Probt <= 0.01 then stars = '***';
	else if Probt <= 0.05 then stars = '**';
	else if Probt <= 0.10 then stars = '*';
	else stars = '';
	format stderr 8.3;
	format estimate 8.3;
	run;
	data parm2 (keep= parameter id value i j);set parm0; 		
	value1 = '('||put(stderr,8.3)||')'; value=compress(value1);put value;i=1;j=2 ; 
	id=_N_;
	run;
	data parm1 (keep= parameter id value i j);set parm0; 		
	value = put(estimate,8.3) || stars; i=1;j=1; 
	id=_N_;
	run;
	data parm3; set parm1 parm2;
	run;
	proc sort data= parm3; by id; run;
	data Rsquares0 (keep = value i); set Rsquares_m&m;
	value= substrn(RSquare,1,5); i=2; 
	run;
	data no_obs0 (keep = value i); set no_obs_m&m; 
	if Label ne 'Number of Observations Used' then delete; char_id = put(N, 7.) ;  drop N ;  rename char_id=N ;
	value = substrn(N,1,8); i=3; 
	run;
	data result_m&m (rename=(value= value_m&m) drop=s); set parm3 Rsquares0 no_obs0;
	s=substrn(parameter,1,5);
	if s = 'YrQtr' then delete;
	if j=2 then parameter = ' ';
	if i=2 then do; parameter = 'R-square'; id=1;end;
	if i=3 then do; parameter = 'N';id=1; end;
	run;
	%end;

* Model incl. time fixed effects;
****************************************************;
data Table_&Z   (drop= i j id) ;
merge result_m1 result_m2 result_m3  result_m4 result_m5;
by i id ;
if value_m1 = " " then delete;
		if parameter = 'LTROUptakeBank5y_scl' then parameter= 'Bank LTRO Uptake';  
		if parameter = 'CFToAssets' then parameter= 'Cash Flow';
		if parameter = 'MrktToBook' then parameter= 'Market to Book';
		if parameter = 'Size' then parameter= 'Firm Size';
		if parameter = 'Leverage' then parameter= 'Leverage';
		if parameter = 'Rated' then parameter= 'Rated';
		if parameter = 'logspread5y' then parameter= 'Sovereign Risk'; 
		if parameter = 'Export' then parameter= 'Sovereign Export'; 
		if parameter = 'D_Dividends_lag' then parameter= 'Lagged Div. Dummy';
		if parameter = 'RDToSales_reg_lag' then parameter= 'Lagged R\&D/Sales';
		if parameter = 'AQCToAssets_reg_lag' then parameter= 'Lagged Acquisition Activity';
		if parameter = 'Industry_Sigma' then parameter= 'Industry Sigma';
		if parameter = 'NWCtoAssets' then parameter= 'Net Working Capital';
		if parameter = 'Sales_ln' then parameter= 'Log Sales';
		if parameter = 'HHI' then parameter= 'Competition'; 
		if parameter = 'BankLTROUptake_ToLoan' then parameter= 'Bank LTRO Uptake (scaled by Loan Pf.)'; 
		if parameter = 'BankLTROUptake_FacAmt' then parameter= 'Bank LTRO Uptake (w. Bank Loan)'; 
		if parameter = 'LTRO_HighRiskBank' then parameter= 'Bank LTRO Uptake x High Risk Bank'; 
		if parameter = 'LTRO_GIIPS' then parameter= 'Bank LTRO Uptake x GIIPS'; 
		if parameter = 'LTRO_HighRiskBank_GIIPS' then parameter= 'Bank LTRO Uptake x High Risk Bank x GIIPS'; 
		if parameter = 'LTRO_RiskySovBank' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt'; 
		if parameter = 'LTRO_RiskySovBank_GI' then parameter= 'Bank LTRO Uptake x Bank Increasing Risky Sov. Debt x GIIPS'; 
		if parameter = 'LTRO_LowRepay' then parameter= 'Bank LTRO Uptake x Low Early Repayment'; 
		if parameter = 'LTRO_MedRepay' then parameter= 'Bank LTRO Uptake x Medium Early Repayment'; 
		if parameter = 'LTRO_HigRepay' then parameter= 'Bank LTRO Uptake x High Early Repayment'; 
		if parameter = 'LTRO_SmallFirm' then parameter= 'Bank LTRO Uptake x Small Firm'; 
		if parameter = 'LTRO_HighRoR_Csh' then parameter= 'Bank LTRO Uptake x High Cash Holding'; 
		if parameter = 'LTRO_LowRoR_TA' then parameter= 'Bank LTRO Uptake x Low Tangible Assets'; 
		if parameter = 'LTRO_HighRoR_CFrisk' then parameter= 'Bank LTRO Uptake x High Cash Flow Risk'; 
		if parameter = 'LTRO_GovInvDec' then parameter= 'Bank LTRO Uptake x Decreased Gov. Inv.'; 
		if parameter = 'LTRO_CorpTaxInc' then parameter= 'Bank LTRO Uptake x Increased Corp. Tax'; 
run;

%mend Regression;
%Regression;

